<#assign daoVarName>${nameDao?substring(1,nameDao?length)?uncap_first}</#assign>
<#if packageServiceImp != "">
package ${packageServiceImp};

</#if>
<#if packageServiceImp != packageService>
import ${packageService}<#if packageService != "">.</#if>${nameService};

</#if>
<#if (packageServiceImp != packageEntity) && (insert || update || delete)>
import ${packageEntity}<#if packageEntity != "">.</#if>${nameEntity};

</#if>
<#if packageServiceImp != packageDao>
import ${packageDao}<#if packageDao != "">.</#if>${nameDao};

</#if>
public class ${nameServiceImp} implements ${nameService} {
//============================================================================
//parameter
//============================================================================
	/** dao实例 */
	private ${nameDao} ${daoVarName};
//============================================================================
//override
//============================================================================
	<#if insert>
	/** 插入 */
	@Override
	public void insert${nameEntity}(${nameEntity} ${nameEntity?uncap_first}) {
		get${daoVarName?cap_first}().insert${nameEntity}(${nameEntity?uncap_first});
	}
	
	</#if>
	<#if update>
	/** 更新 */
	@Override
	public void update${nameEntity}(${nameEntity} ${nameEntity?uncap_first}) {
		get${daoVarName?cap_first}().update${nameEntity}(${nameEntity?uncap_first});
	}
	
	</#if>
	<#if delete && keyproperty??>
	/** 删除 */
	@Override
	public void delete${nameEntity}(${keyproperty.javaType} ${keyproperty.property}) {
		get${daoVarName?cap_first}().delete${nameEntity}(${keyproperty.property});
	}
	
	</#if>
//============================================================================
//getter/setter
//============================================================================
	public ${nameDao} get${daoVarName?cap_first}(){
		return ${daoVarName};
	}
	public void set${daoVarName?cap_first}(${nameDao} ${daoVarName}){
		this.${daoVarName} = ${daoVarName};
	}
}